{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "7332a2d0-10c9-40f2-8bda-9a2ec630f13f",
   "metadata": {},
   "source": [
    "Chapter 21\n",
    "# 线图\n",
    "Book_6《数据有道》 | 鸢尾花书：从加减乘除到机器学习"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "id": "ac43e145-b958-4c37-be88-32516fe9bdf0",
   "metadata": {},
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import networkx as nx\n",
    "import numpy as np\n",
    "import seaborn as sns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "8aa6b49e-bbb9-48e1-94ca-6034b04f6fe3",
   "metadata": {},
   "outputs": [],
   "source": [
    "undirected_G = nx.Graph()\n",
    "# 创建无向图的实例"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "6d040088-8f36-4e83-9203-4536c4d8188a",
   "metadata": {},
   "outputs": [],
   "source": [
    "undirected_G.add_nodes_from(['a', 'b', 'c', 'd'])\n",
    "# 添加多个顶点"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "f37a2cdf-1e76-4a46-bf35-5492af13e615",
   "metadata": {},
   "outputs": [],
   "source": [
    "undirected_G.add_edges_from([('a','b'),\n",
    "                             ('b','c'),\n",
    "                             ('b','d'), \n",
    "                             ('c','d'),\n",
    "                             ('c','a')])\n",
    "# 增加一组边"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "20884d5d-7809-4182-a86a-6d05d993c647",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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3b9FZqtJz6F5vwm4c3I3bu0MR3XJTTj6vQ9ZLSu1gd/fU/Z70kVSp0fVhu8pExGRpF3ML3lgR6+GMIQdvThSJiIiSXNta4sXxrk16hovjHMTUsj1xVImIiLJWzK5J7wGd2zQ93oN7oglk3vqOJF+sJSJiEjy5HIZPp0zsGbE/NdnzH91788XjXMTemxjfXH1NRERGQS5XIbXpvaC91AXxB66gvifMv/YXAQ1G4xotL+vsvZ70gXzhnc2iCnrP+NCLyIiMkhlFdXYcToXOYV3UVxeBTsrczg5WGNiL0dJrbKuT4dypExERAbJxtIMMwZ0EB1Dp/hMmYiISCJYykRERBLBUiYiIpIIljIREZFEsJSJiIgkgqVMREQkESxlIiIiiWApExERSQRLmYiISCJYykRERBLBUiYiIpIIljIREZFEsJSJiIgkgqVMREQkESxlIiIiiWApExERSQRLmYiISCJYykRERBLBUiYiIpIIljIREZFEsJSJiIgkgqVMREQkESxlIiIiiWApExERSQRLmYiISCJYykRERBLBUiYiIpII87p8SKvVAgCKior0GoaIiMjY3OvOe136KHUq5eLiYgCAi4tLI2IRERGZruLiYjg4ODzyMzJtHapbo9EgKysLdnZ2kMlkOgtIRERk7LRaLYqLi9GhQwfI5Y9+alynUiYiIiL940IvIiIiiWApExERSQRLmYiISCJYykRERBLBUiYiIpIIljIREZFEsJSJiIgk4v8BiNydWX7hmhAAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 600x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize = (6,6))\n",
    "nx.draw_networkx(undirected_G, \n",
    "                 node_size = 180)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "6f5e5fe0-60e1-4f35-b427-88d09ee7aad2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[('a', 'b'), ('a', 'c'), ('b', 'c'), ('b', 'd'), ('c', 'd')]"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sequence_edges_G = list(undirected_G.edges())\n",
    "# 获取无向图边的序列，用于关联矩阵列排序\n",
    "sequence_edges_G"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8721b33f-0fe1-41a7-9766-c3c96f8db5d4",
   "metadata": {},
   "source": [
    "## 线图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "ee1ca31d-d315-40aa-8b53-1b3f340c7f11",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 转换成线图\n",
    "L_G = nx.line_graph(undirected_G)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "3df63b06-120f-4f38-8a23-4a8f57198ab8",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 600x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 可视化线图\n",
    "plt.figure(figsize = (6,6))\n",
    "nx.draw_networkx(L_G, pos = nx.spring_layout(L_G),\n",
    "                 node_size = 180)\n",
    "plt.savefig('线图.svg')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "14c38d19-1372-4992-8493-3294262b38a6",
   "metadata": {},
   "source": [
    "## 矩阵关系"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "838369e3-e2c0-41d3-aa6d-fb1489478b2c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "NodeView((('b', 'c'), ('b', 'd'), ('a', 'b'), ('a', 'c'), ('c', 'd')))"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "L_G.nodes()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "40289619-f2c5-4b23-bee4-3152ae3e5756",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[0, 1, 1, 1, 1],\n",
       "       [1, 0, 1, 0, 1],\n",
       "       [1, 1, 0, 1, 0],\n",
       "       [1, 0, 1, 0, 1],\n",
       "       [1, 1, 0, 1, 0]], dtype=int32)"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "nx.adjacency_matrix(L_G).todense()\n",
    "# 需要调整列顺序，列置换"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "id": "5e0ca171-6c0f-4137-832e-64f189e35ad6",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[0, 1, 1, 1, 0],\n",
       "       [1, 0, 1, 0, 1],\n",
       "       [1, 1, 0, 1, 1],\n",
       "       [1, 0, 1, 0, 1],\n",
       "       [0, 1, 1, 1, 0]], dtype=int32)"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 线图的链接矩阵，调整列顺序\n",
    "A_LG = nx.adjacency_matrix(L_G, \n",
    "             nodelist = sequence_edges_G).todense()\n",
    "A_LG"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "id": "ad8fdc4c-8bee-4ac3-9bba-c2b447904174",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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Psqg7zfXxZHI29W8NQBYT/awjsS5UU88N9l349zkdBIeJikpCYmJiVZlTfWey8rKYDKZ0KFDB6vyDh064OTJk6KOtWDBAvj7+1sleTFklaCJiIhskXIWt63hbKn99a9/RVpaGjIzM6HX6x3algmaiIjIBl9fX7i5uaG0tNSqvLS0FB07drS77dtvv42//vWv+Pe//42IiAiHj81r0EREpAiumMXt4eGByMhIZGRkWMrMZjMyMjIwZMgQm9utWLECb7zxBnbu3ImBAwfe1r+XPWgiIlIEV93rk5iYiPj4eAwcOBCDBw/GqlWrUFNTg5kzZwIApk+fjoCAAMskszfffBOLFy/G559/jqCgIJSUlAAA7r33Xtx7772ij8sETUREyuCiDD1lyhRcunQJixcvRklJCfr164edO3daJo4VFRVBq/2/Aen3338f9fX1jV7NnJycjCVLlog+LhM0ERFRM1544QW88MILTX4vMzPT6vO5c+ckOSYTNBERKYLansXNBE1ERIqgtgdOchY3ERGRDLEHTUREiqCyDjQTNBERKYTKMjSHuImIiGTI4R600WhETk4Ozp8/j9raWvj5+aF///4IDg52RnxEREQAOIvbpqysLKxevRrbt29HQ0MDvLy84OnpiYqKChiNRnTt2hVz5szBc889h/vuu8+ZMRMRkQpxFncTJkyYgClTpiAoKAjp6em4cuUKysvLceHCBdTW1qKwsBCLFi1CRkYGevbsiV27djk7biIioruaqB70+PHjsWXLFri7uzf5/a5du6Jr166Ij49Hfn4+Ll68KGmQREREKutAi0vQCQkJoncYFhaGsLCw2w6IiIioSSrL0LzNioiIFIGTxGwIDg6G5qYr9GfOnHFKQERERORAgt64caMTwyAiIrJPbbO4RSfokSNHOjMOIiIiu1SWn8Ul6MuXL4veYZs2bW47GCIiIrpOVIJu27at1fVne0wm0x0FRERE1CSVdaFFJeg9e/ZYvj537hwWLlyIGTNmYMiQIQCA7OxsbNq0CQaDwTlREhGR6nEWdxNuvv68dOlSrFy5EtOmTbOUTZgwAX369MEHH3yA+Ph46aMkIiJSGYffZpWdnY2BAwc2Kh84cCAOHjwoSVBERES30mikW5TA4QQdGBiI9evXNyr/8MMPERgYKElQREREt9JIuCiBw08S+9vf/obHHnsM3333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\n",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.heatmap(A_LG, cmap = 'Blues', \n",
    "            annot = True, fmt = '.0f',\n",
    "            yticklabels = list(sequence_edges_G), \n",
    "            xticklabels = list(sequence_edges_G),\n",
    "            linecolor = 'k', square = True,\n",
    "            linewidths = 0.2)\n",
    "plt.savefig('线图的邻接矩阵.svg')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "e1631ca9-da8e-4469-ad7c-82c261bcf04e",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 图的关联矩阵\n",
    "C = nx.incidence_matrix(undirected_G).todense()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "8b82d3d4-2837-4061-a123-fcbabb80d651",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[0., 1., 1., 1., 0.],\n",
       "       [1., 0., 1., 0., 1.],\n",
       "       [1., 1., 0., 1., 1.],\n",
       "       [1., 0., 1., 0., 1.],\n",
       "       [0., 1., 1., 1., 0.]])"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "C.T @ C - 2 * np.identity(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "187c677c-b74f-471c-920e-a8e940ea8759",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
